Mitigation of Temporal PWM Artifacts

ABSTRACT

A system and method for reducing pulse width modulation contouring artifacts. Each input intensity value is translated to at least one non-binary bit pattern for display. Many of the input intensity values are translated to at least two alternate non-binary bit patterns. The alternate codes are used to smooth the transition between intensity codes as major bits are turned on. The smoothing occurs by the gradual transition from codes that do not use the major bit to codes that do use the major bit. Typically the alternate codes are selected based on the location of the pixel in a spatial pattern ( 100 ) and the alternate codes are spatially alternated from one pixel ( 102 ) to the next ( 104 ). Other embodiments temporally alternate the codes from one period—typically a frame period—to the next. Still other embodiments alternate the codes both spatially and temporally.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of, claims priority under 35 U.S.C.§119, and the benefit of the filing date of, of U.S. patent applicationSer. No. 09/573,109, filed May 17, 2000, which claims priority of U.S.patent application Serial No. filed May 17, 1999.

The following patents and/or commonly assigned patent applications arehereby incorporated herein by reference:

Patent No. Filing Date Issue Date Title 5,619,228 Jun. 5, 1996 Apr. 8,1997 Method For Reducing Temporal Artifacts In Digital Video 09/088,674Jun. 2, 1998 Boundary Dispersion For Mitigating PWM Temporal ContouringArtifacts In Digital Displays 60/174,106 Dec. 31, 1999 Spoke LightRecapture In Sequential Color Imaging Systems

FIELD OF THE INVENTION

This invention relates to the field of display systems, moreparticularly to digital display systems using pulse width modulation.

BACKGROUND OF THE INVENTION

Digital display systems typically produce or modulate light as a linearfunction of input image data for each pixel. For an 8-bit monochromaticimage data word, the input image data word ranges from 0 to 255. A valueof 0 results in no light being transmitted to or produced by a pixel,255 is the maximum intensity level for a pixel, and 128 is mid-scalelight.

Pulse width modulation (PWM) schemes typically modulate a constantintensity light source in periods whose length increases by a power oftwo. For example, when 5 mS is available for each color of a three-colorsystem the element on times for one 8-bit system are 20 μS, 40 μS, 80μS, 160 μS, 320 μS, 640 μS, 1280 μS, and 2560 μS. If a given bit for aparticular pixel is a logic 0, no light is transmitted to or generatedby the pixel. If the bit is a logic 1, then the maximum amount of lightis transmitted to or generated by the pixel during the bit period. Theviewer's eye integrates the light received by a particular pixel duringan entire frame period to produce the perception of an intermediateintensity level.

One problem created by PWM schemes is the creation of visual artifactsthat arise due to the generation of an image as a series of discretebursts of light. While stationary viewers perceive stationary objects ashaving the correct intensity, motion of the viewer's eye or motion inthe image can create an artifact know as PWM temporal contouring, orsimply PWM contouring. PWM contouring is described in U.S. Pat. No.5,619,228 and occurs when the distribution of radiant energy during aframe period changes from one frame to the next. With motion in thescene or eye, portions of the frame time of adjacent image pixels areintegrated to achieve an incorrect perceived pixel intensity. The PWMtemporal contouring artifact appears as a noticeable pulsation in theimage pixels. This pulsation is time-varying and creates apparentcontours in an image that do not exist in the input image data.

PWM contouring is most clearly seen when viewing a grayscale ramp thatincreases horizontally across an image. As the image data on each lineincrease from 0 on the left of the row to 255 on the right, there areseveral places along each row where the major bits change from a logic 0to a logic 1. The most dramatic change is in the center of each rowwhere one pixel has a binary value of 127, which results in the firstseven bits being a logic 1, and the adjacent pixel to the right having abinary value of 128, which results in the first seven bits being a logic0 and the most significant bit being a logic 1.

If the image data is displayed over time in order of decreasing bitmagnitude, that is b7, b6, b5, b4, b3, b2, b1, and b0, a viewer scanningfrom left to right may see an abnormally bright region at the 127 to 128transition. This abnormal brightness is due to the viewer's eyeintegrating the last half of a given frame of pixel data 127—duringwhich all bits 6:0 are all on—with the first half of the nextframe—during which bit 7 is on for the entire half-frame. The net effectof the integration of the last half of the 127-valued pixel and thefirst half of the 128-valued pixel is a pixel having an intensity valueof 255. The same artifact occurs when the pixel data is moving and theviewer's eye is stationary, and at the lower bit transitions.

When viewed at a normal viewing distance, the PWM contouring artifactcreated by two adjacent pixels is very difficult, if not impossible, forthe typical viewer to detect. In real images, however, the bittransitions often occur in areas having a large number of adjacentpixels with virtually identical image data values. If these large areasof similar pixels have clusters whose intensity values cross a major bittransition, the PWM contouring is much easier to detect.

One method of reducing the PWM contouring artifact uses bit splitting.Bit splitting divides the long periods during which the more significantbits are displayed into two or more shorter bits and distributes themthroughout the frame period. For example, an 8-bit system may divide theMSB, having a duration of 128 LSB periods, into four equal periods eachrequiring 32 LSB periods and distributed throughout the frame period.

Bit splitting techniques eliminate most of the objectionable PWMcontouring artifacts. Unfortunately, bit splitting increases thenecessary bandwidth of the modulator input since some of the data mustbe loaded into the system multiple times during a single frame period.Practical bit splitting methods reduce, but do not eliminate, the PWMcontouring artifact.

One solution to the PWM contouring problem, called boundary dispersion,dithers the image data for each pixel in or near a region that crossessuch a major bit boundary. As described in U.S. patent application Ser.No. 09/088,674, spatial patterns are used to dither pixels above andbelow the values at which the major bit transitions occur. For example,if a major bit transition occurs at an intensity value of 32, all pixelswithin a certain distance of a pixel having a value equal to 32, or avalue in a range including 32, are dithered. In one embodiment, a +/−2LSB dither is applied in a checkerboard fashion over a repeatingtwo-frame period. During the first frame, the intensity of alternatepixels is reduced by 2 LSBs while the intensity of the other half of thepixels is increased by 2 LSBs. During a second frame, the dither isreversed. Over the two frame period, each pixel is displayed at thecorrect average intensity. The size of the dither varies as a functionof intensity data values of the pixel and nearby pixels.

Boundary dispersion spreads the region in which the major bit transitionoccurs over a larger area and moves the actual transition each frame.Unfortunately, boundary dispersion creates spatial noise patterns withinany given frame and temporal noise from frame-to-frame. What is neededis a system and method for reducing the PWM contouring artifact as wellas other artifacts, that does not induce spatial and temporal noise orother artifacts into the resulting image.

SUMMARY OF THE INVENTION

Objects and advantages will be obvious, and will in part appearhereinafter and will be accomplished by the present invention thatprovides a method and system for artifact mitigation in PWM displays.One embodiment of the claimed invention provides a method ofameliorating image artifacts in a pulse width modulated display system.The method comprising the steps of receiving a series of input pixelintensity values, converting each pixel intensity value to at least onenon-binary bit pattern, and displaying each non-binary bit pattern toform a series of image pixels, wherein at least one of said input pixelintensity values displayed alternately by at least two said non-binarybit patterns. The non-binary bit patterns can be alternated eitherspatially or temporally, or both spatially and temporally.

According to another embodiment of the disclosed invention, a method ofameliorating image artifacts in a pulse width modulated display systemis provided. The method comprises the steps of selecting a non-binaryset of bit weights to represent image data, determining a set of bitpatterns to represent each allowed image intensity word, at least one ofthe image intensity words is represented by at least two different bitpatterns, receiving a series of input pixel intensity values, convertingeach pixel intensity value to at least one non-binary bit pattern,displaying each non-binary bit pattern, at least one of the input pixelintensity values displayed alternately by at least two non-binary bitpatterns. The non-binary bit patterns can be alternated either spatiallyor temporally, or both spatially and temporally.

Yet another embodiment of the disclosed invention provides a displaysystem The display system comprising a boundary dispersion processor anda display device. The boundary dispersion processor is operable toconvert an input intensity word into an output non-binary intensity wordhaving an intensity value representative of the input intensity word.The boundary dispersion processor varies the output non-binary intensityword over time. The display device receives the output non-binaryintensity word and displays the output non-binary intensity word.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention, and theadvantages thereof, reference is now made to the following descriptionstaken in conjunction with the accompanying drawings, in which:

FIG. 1A is a plan view of a portion of a pixel array showing a 50/50checkerboard arrangement of pixels for a first frame period.

FIG. 1B is a plan view of the pixel array of FIG. 1 showing a 50/50checkerboard arrangement of pixels for a second frame period.

FIG. 2A is a plan view of a portion of a pixel array showing thearrangement of bit patterns and intensity values displayed by the pixelsfor a first frame.

FIG. 2B is a plan view of a portion of a pixel array showing thearrangement of bit patterns and intensity values displayed by the pixelsfor a second frame.

FIG. 3 is a plan view of an pixel array used to adaptively trigger oneembodiment of the noiseless boundary dispersion technique taught herein.

FIG. 4A is a plan view of a portion of a pixel array similar to thearray of FIGS. 1 and 2 showing a 75/25 pattern.

FIG. 4B is a plan view of a portion of a pixel array similar to thearray of FIG. 3 showing a 75/25 pattern of pixels for a second frameperiod.

FIG. 5 is a plan view of the portion of a pixel array from FIG. 4Bshowing an alternate 75/25 pattern of pixels for the second frameperiod.

FIG. 6 is a block diagram of a display system for implementing theboundary dispersion techniques described herein.

FIG. 7 is a block diagram of the boundary dispersion function shown inFIG. 6.

FIG. 8 is a schematic view of a display system incorporating the novelboundary dispersion techniques taught herein.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A new PWM contouring artifact mitigation technique has been developedthat mitigates the perceptual artifacts created by PWM display systemswithout introducing spatial and temporal artifacts of earliertechniques. Earlier techniques dithered the intensity value of a givenpixel over time in an attempt to break up or spread the PWM artifactover time and space. The technique taught herein takes advantage of theability of non-binary bit weighting schemes to produce a given intensityvalue by two or more sequences.

These sequences are selected and utilized to smooth the transition fromone intensity code to the next. Particularly, the sequences are selectedto gradually turn on the major bits. The term major bits means the moresignificant bits of an intensity word that are of the logic state usedto illuminate a pixel. For the purposes of this disclosure it will beassumed that a logic “1” illuminates a pixel during a given bit period,whether the illumination is caused by display device generating light atthat pixel or by selectively reflecting or transmitting light to thepixel, although the opposite logic convention is intended to beinterchangeable. Likewise, terms such as illuminating a pixel are notintended to be exclusive, but rather should be interpreted to includeall applicable means of forming an image, whether by using a separatelight source and spatial light modulator or by using a display device,such as a field emission device or plasma panel, that is capable ofgenerating lighted image pixels. The terms displaying a bit pattern anddisplaying a non-binary bit pattern refer to the generation of an imagerepresentative of an image word created by using pulse with modulationto illuminate a pixel for a period representative of the bit weightassigned to each bit in the bit pattern and the logic level of that bitin the image word.

The discussion of the various embodiments contained herein will describea monochromatic display system—that is, one in which there is only oneintensity word for each pixel. It should be understood that all of theteachings and claims are applicable to full-color display systems aswell. Full color systems merely display pixels created by three separateimage intensity words—one for each of the primary colors. Full colordisplay systems create the three primary pixels either simultaneously,in the case of three panel displays, or sequentially as in the case ofsingle panel displays that use color wheels, color filters, separatecolored light sources, or other means of generating sequential colorbeams.

The description of the novel technique described herein makes extensiveuse of non-binary bit weighting. For the purposes of this disclosure,the term non-binary refers to the use of intensity data words whose bitdisplay periods are not all even powers of two. The use of non-binarybit periods enables the reduction of temporal PWM artifacts through bitsplitting while limiting the impact of the bit splitting on systembandwidth requirements. Unlike binary weighted bits, there are manypossible non-binary weighting schemes that can produce varying results.The examples of non-binary weighting contained herein are for purposesof illustration and should not be considered limitations to thetechniques taught herein or to the claims appended hereto.

Table 1 details an entire sequence of non-binary bit patterns chosen toimplement the improved boundary dispersion technique, also referred toas noiseless boundary dispersion. In Table 1, only the even intensitywords are listed. This is because when using relatively large inputwords, such as an eight-bit input word, the boundary dispersiontechnique provides the advantages sought without having to dither oralter the LSB. Since the LSB is not needed to implement the algorithm,the complexity of the processing hardware is reduced. When reading Table1, the odd intensity values produce the same output bit words as thepreceding even intensity value, but with the LSB set to a logic 1. Forexample, intensity word 15 is generated using bit weights 1, 4, and 10,while intensity word 21 uses either bit weights 1, 4, 6,and 10, or bitweights 1, 2, and 18. The odd intensity words have the same number anddistribution of alternatives as the preceding even intensity words. Thechoice between alternate patterns and where each of the alternatepatterns is used will be discussed in more detail below.

TABLE 1 Non- Non- Non- Non- Non- Non- Non- Binary Binary Binary BinaryBinary Binary Binary Binary Binary Code 2 4 6 10 18 32 48 50 84 Pattern2 1 100% 4 1 100% 6 1 1 50% 6 1 50% 8 1 1 100% 10 1 1 75% 10 1 75% 12 11 1 50% 12 1 1 50% 14 1 1 100% 16 1 1 1 50% 16 1 1 50% 18 1 1 1 75% 18 125% 20 1 1 1 50% 20 1 1 50% 22 1 1 1 1 25% 22 1 1 75% 24 1 1 1 50% 24 11 50% 26 1 1 1 100% 28 1 1 1 50% 28 1 1 50% 30 1 1 1 1 50% 30 1 1 1 50%32 1 1 1 75% 32 1 25% 34 1 1 1 1 75% 34 1 1 25% 36 1 1 1 1 50% 36 1 150% 38 1 1 1 1 50% 38 1 1 1 50% 40 1 1 1 1 1 25% 40 1 1 1 75% 42 1 1 150% 42 1 1 50% 44 1 1 1 1 50% 44 1 1 1 50% 46 1 1 1 100% 48 1 1 1 1 50%48 1 1 1 50% 50 1 1 1 1 75% 50 1 1 25% 52 1 1 1 1 50% 52 1 1 1 50% 54 11 1 1 1 25% 54 1 1 1 75% 56 1 1 1 1 50% 56 1 1 1 50% 58 1 1 1 1 100% 601 1 1 1 50% 60 1 1 1 50% 62 1 1 1 1 1 75% 62 1 1 1 25% 64 1 1 1 1 75% 641 1 1 1 25% 66 1 1 1 1 50% 66 1 1 1 1 50% 68 1 1 1 1 1 50% 68 1 1 1 150% 70 1 1 1 1 1 25% 70 1 1 1 1 1 75% 72 1 1 1 1 1 1 25% 72 1 1 1 75% 741 1 1 1 100% 76 1 1 1 1 50% 76 1 1 1 50% 78 1 1 1 1 1 50% 78 1 1 1 1 50%80 1 1 1 1 75% 80 1 1 25% 82 1 1 1 1 1 75% 82 1 1 1 25% 84 1 1 1 1 1 50%84 1 1 1 50% 86 1 1 1 1 1 50% 86 1 1 1 1 50% 88 1 1 1 1 1 1 25% 88 1 1 11 75% 90 1 1 1 1 50% 90 1 1 1 50% 92 1 1 1 1 1 50% 92 1 1 1 1 50% 94 1 11 1 100% 96 1 1 1 1 1 50% 96 1 1 1 1 50% 98 1 1 1 1 1 75% 98 1 1 1 25%100 1 1 1 1 1 50% 100 1 1 1 1 50% 102 1 1 1 1 1 1 25% 102 1 1 1 1 75%104 1 1 1 1 1 50% 104 1 1 1 1 50% 106 1 1 1 1 1 100% 108 1 1 1 1 1 50%108 1 1 1 1 50% 110 1 1 1 1 1 1 75% 110 1 1 1 1 25% 112 1 1 1 1 1 75%112 1 1 1 1 25% 114 1 1 1 1 1 1 50% 114 1 1 1 1 1 50% 116 1 1 1 1 1 150% 116 1 1 1 1 1 50% 118 1 1 1 1 1 1 25% 118 1 1 1 1 1 75% 120 1 1 1 11 1 1 25% 120 1 1 1 1 1 1 75% 122 1 1 1 1 1 50% 122 1 1 1 1 50% 124 1 11 1 1 100% 126 1 1 1 1 1 50% 126 1 1 1 1 50% 128 1 1 1 1 1 1 50% 128 1 11 1 1 50% 130 1 1 1 1 1 75% 130 1 1 1 25% 132 1 1 1 1 1 1 75% 132 1 1 11 25% 134 1 1 1 1 1 1 50% 134 1 1 1 1 50% 136 1 1 1 1 1 1 50% 136 1 1 11 1 50% 138 1 1 1 1 1 1 1 25% 138 1 1 1 1 1 75% 140 1 1 1 1 1 50% 140 11 1 1 50% 142 1 1 1 1 1 1 50% 142 1 1 1 1 1 50% 144 1 1 1 1 1 100% 146 11 1 1 1 1 50% 146 1 1 1 1 1 50% 148 1 1 1 1 1 1 75% 148 1 1 1 1 25% 1501 1 1 1 1 1 50% 150 1 1 1 1 1 50% 152 1 1 1 1 1 1 1 25% 152 1 1 1 1 175% 154 1 1 1 1 1 1 50% 154 1 1 1 1 1 50% 156 1 1 1 1 1 1 100% 158 1 1 11 1 1 50% 158 1 1 1 1 1 50% 160 1 1 1 1 1 1 1 75% 160 1 1 1 1 1 25% 1621 1 1 1 1 1 75% 162 1 1 1 1 1 25% 164 1 1 1 1 1 1 50% 164 1 1 1 1 1 150% 166 1 1 1 1 1 1 1 50% 166 1 1 1 1 1 50% 168 1 1 1 1 1 1 1 25% 168 11 1 1 1 1 75% 170 1 1 1 1 1 1 1 1 25% 170 1 1 1 1 1 1 75% 172 1 1 1 1 11 50% 172 1 1 1 1 1 50% 174 1 1 1 1 1 1 1 25% 174 1 1 1 1 1 75% 176 1 11 1 1 50% 176 1 1 1 1 50% 178 1 1 1 1 1 1 50% 178 1 1 1 1 1 50% 180 1 11 1 1 100% 182 1 1 1 1 1 1 50% 182 1 1 1 1 1 50% 184 1 1 1 1 1 1 75% 1841 1 1 1 25% 186 1 1 1 1 1 1 50% 186 1 1 1 1 1 50% 188 1 1 1 1 1 1 1 25%188 1 1 1 1 1 75% 190 1 1 1 1 1 1 50% 190 1 1 1 1 1 50% 192 1 1 1 1 1 1100% 194 1 1 1 1 1 1 50% 194 1 1 1 1 1 50% 196 1 1 1 1 1 1 1 75% 196 1 11 1 1 25% 198 1 1 1 1 1 1 75% 198 1 1 1 1 1 1 25% 200 1 1 1 1 1 1 50%200 1 1 1 1 1 1 50% 202 1 1 1 1 1 1 1 50% 202 1 1 1 1 1 1 50% 204 1 1 11 1 1 1 25% 204 1 1 1 1 1 1 1 75% 206 1 1 1 1 1 1 1 1 25% 206 1 1 1 1 175% 208 1 1 1 1 1 1 100% 210 1 1 1 1 1 1 50% 210 1 1 1 1 1 50% 212 1 1 11 1 1 1 50% 212 1 1 1 1 1 1 50% 214 1 1 1 1 1 1 75% 214 1 1 1 1 25% 2161 1 1 1 1 1 1 75% 216 1 1 1 1 1 25% 218 1 1 1 1 1 1 1 50% 218 1 1 1 1 150% 220 1 1 1 1 1 1 1 50% 220 1 1 1 1 1 1 50% 222 1 1 1 1 1 1 1 1 25%222 1 1 1 1 1 1 75% 224 1 1 1 1 1 1 50% 224 1 1 1 1 1 50% 226 1 1 1 1 11 1 50% 226 1 1 1 1 1 1 50% 228 1 1 1 1 1 1 100% 230 1 1 1 1 1 1 1 50%230 1 1 1 1 1 1 50% 232 1 1 1 1 1 1 1 75% 232 1 1 1 1 1 25% 234 1 1 1 11 1 1 50% 234 1 1 1 1 1 1 50% 236 1 1 1 1 1 1 1 1 25% 236 1 1 1 1 1 175% 238 1 1 1 1 1 1 1 50% 238 1 1 1 1 1 1 50% 240 1 1 1 1 1 1 1 100% 2421 1 1 1 1 1 1 50% 242 1 1 1 1 1 1 50% 244 1 1 1 1 1 1 1 1 100% 246 1 1 11 1 1 1 100% 248 1 1 1 1 1 1 1 1 100% 250 1 1 1 1 1 1 1 1 100% 252 1 1 11 1 1 1 1 100% 254 1 1 1 1 1 1 1 1 1 100%

A very simple implementation of the boundary dispersion technique usesonly two intensity steps to transition a most significant active bit on.One example of a simple implementation uses bit weights of 1, 2, 4, 6,10, 18, 32, 48, 50, and 84 times the LSB value. In this example, aninput intensity word of 34 is displayed using bit weights 2, 4, 10, and18, and the input intensity word of 36 is displayed using bit weights 4and 32. Because the display of an intensity of 36 uses bit weight 32,intensity word 35 is used to gradually transition to the use of the mostsignificant active bit. This transition is accomplished by using two ofthe possible combinations of bit weights to achieve an intensity valueof 35. The first pattern, referred to as pattern ‘A’ for the duration ofthis example, uses bit weights 1, 2, 4, 10, and 18. The second pattern,referred to as pattern ‘B’ for the duration of this example, uses bitweights 1, 2, and 32. These two patterns are used in a 50/50checkerboard pattern shown in FIG. 1A. The pattern is reversed eachframe period so that during a second frame the pattern shown in FIG. 1Bis used. While the bit weights used are listed by magnitude, the actualorder in which they are displayed, and even whether they are displayedas a contiguous bit period or split across two or more bit periodsdepends on the design of the display system.

FIGS. 2A and 2B show a mixed array of pixel values and patterns. InFIGS. 2A and 2B, intensity value 36 is displayed using bit weights 4 and32 in each frame period. Likewise, intensity value 34 is displayed usingbit weights 2, 4, 10, and 18. The intermediate value, 35, is displayedusing an alternating grid of patterns A and B as described above.

One of the major differences between the boundary dispersion techniquestaught herein and previous boundary dispersion techniques is that theproper intensity values are always used. Previous techniques ditheredthe intensity values to create the checkerboard patterns and feather-inthe major bits. Maintaining a constant and accurate intensity for allpixels at all times prevents artifacts from being created when theviewer's eye moves, or when the input intensity data changes. Changingpixel intensity from one frame period (3A) to the next (3B), such as theleft-most pixel in the middle row and the two left-most pixels in thebottom row, does not result in inaccurate intensity levels for anyintegration period equal to or longer than a single frame period.Maintaining a constant and accurate intensity for all pixels at alltimes allows the technique to use only a spatial dither, only a temporaldither, or a combination of spatial and temporal dithering withoutintroducing artifacts in the displayed image.

Although the term frame period will be used throughout this descriptionto describe how often the various alternate patterns are alternated, theterm frame period should be interpreted to include any other repeatingperiod—whether sub-frame period, color sub-frame period, or a period ofmore than one frame. The selection of the term “frame period” merelydescribes the most general and easily explained period at which toalternate patterns. Likewise, although the description of the boundarydispersion technique uses only two alternate patterns, certainnon-binary code sequences permit the use of more than two alternatepatterns. The use of more than two alternate patterns is envisioned anddoes not depart from the teachings and claims hereof.

While the example described above used a strict translation betweeninput intensity value and output bit patterns, more advancedimplementations of the boundary dispersion technique vary the bitpattern depending on the values of nearby pixels. FIG. 3 shows but onerepresentative example of a pixel grid used to illustrate the adaptiveselection of intensity codes. According to one embodiment, boundarydispersion is used on any pixel N when one of the 24 neighboring pixelsshown in FIG. 3 (P1-P24) has a value different than pixel N. This formof adaptive boundary dispersion only uses boundary dispersion when it isneeded—that is when nearby pixels have different intensity values andimage or eye motion could create artifacts. When a large region ofpixels all have the same intensity there is no need for boundarydispersion and the boundary dispersion is turned off to eliminate thepossibility of creating artifacts through the boundary dispersiontechnique itself.

There are numerous strategies for implementing adaptive boundarydispersion. In a very simple case, boundary dispersion is turned onanytime a pixel is within a predetermined distance or intensity valuefrom a boundary at which a major bit is turned on. For example, if amajor bit is turned on at intensity value 35, boundary dispersion isapplied to pixels with an intensity value of 35 +/−2. Alternatively,boundary dispersion is applied to all pixels with intensities less(greater) than 35 that are within a predetermined distance from pixelswith intensities greater (less) than 35. Yet another alternative appliesboundary dispersion to all pixels within a predetermined distance from apixel having an intensity value of 35.

Yet another implementation of the boundary dispersion further dispersesthe PWM contouring artifacts. This implementation uses not just a 50/50checkerboard, but also 25/75 and 75/25 patterns as well. FIGS. 4A and 4Beach show an array of pixels having the 75/25 pattern applied. As withFIGS. 2A and 2B, the patterns of FIGS. 4A and 4B are alternated eachframe period. The 25/75 pattern is not shown, but is implemented byexchanging the positions of patterns ‘A’ and ‘B’ so that 75% of eacharray is pattern ‘B.’ The additional patterns are used to graduallyspatially phase in the transitions to the higher-ordered bits.

Table 2 shows bit weight data that is used with the checkerboardpatterns shown in FIGS. 2A, 2B, 4A, and 4B as the input intensity valueincreases from a value of 30 to 42. Table 2 contains a portion of thedata from Table 1, but in a slightly different format. In Table 2,pattern B uses bit weight 32 for all values above 32, while pattern Adoes not use bit weight 32 except for input intensity value 42. Asindicated by the duty cycle, intensity words 30 and 31 do not use bitweight 32 at all. Once the input intensity word reaches 32, bit weight32 is used 25% of the time until the input intensity word reaches 36.Once the input intensity word reaches 36, bit weight 32 is used 50% ofthe time. Input intensity words 40 and 41 resulting bit weight 32 beingused 75% of the time, after which it is used 100% of the time for inputintensity words 42 and above.

TABLE 2 Intensity Pattern “A” Pattern “B” Duty Cycle (A/B) 42 4, 6, 3210, 32 50/50 41 1, 2, 4, 6, 10, 18 1, 2, 6, 32 25/75 40 2, 4, 6, 10, 182, 6, 32 25/75 39 1, 4, 6, 10, 18 1, 2, 4, 32 50/50 38 4, 6, 10, 18 2,4, 32 50/50 37 1, 2, 6, 10, 18 1, 4, 32 50/50 36 2, 6, 10, 18 4, 3250/50 35 1, 2, 4, 10, 18 1, 2, 32 75/25 34 2, 4, 10, 18 2, 32 75/25 331, 4, 10, 18 1, 32 75/25 32 4, 10, 18 32 75/25 31 1, 2, 4, 6, 18 1, 2,10, 18 50/50 30 2, 4, 6, 18 2, 10, 18 50/50

Returning to Table 1, it is evident that not only is the most major bit,that is the most significant active bit, being smoothly transitioned on,other major bits are also being transitioned to minimize the artifactscreated by any of the code transitions. The bit patterns in Table 1 werecreated to turn each new major bit on over a period, where possible, oftwelve intensity codes. The four codes turn the new major bit on only25% of the time. For example, the codes for intensity values 62-65 onlyuse bit weight 48 25% of the time. The next four codes, for exampleintensity values 66-69, use bit weight 48 half of the time. The lastfour codes in the translation, 70-73 use bit weight 48 75% of the time.Code 74 and higher all use bit weight 48 all of the time.

Once a smooth transition to a new major bit is obtained, the alternatenon-binary codes are used to obtain smooth transitions on the lessermajor bits. For example, codes 80 through 89 implement a smoothtransition for bit weight 32 while bit weight 48 is always on.

Often there are not enough alternative non-binary output codes, orenough input intensity words available to use twelve separate inputintensity words to effect the transition to a new major bit. When thereare insufficient steps available, the 50/50 patterns take precedenceover the 25/75 patterns, which take precedence over the 75/25 patterns.

FIG. 6 shows one embodiment of a system of implementing the PWMcontouring technique. In FIG. 6, 24 bits of RGB image data, 8 bits percolor, is received from a video source. A degamma circuit 602 linearizesthe image data, if necessary, to compensate for the response of thedisplay device being used. In the system of FIG. 6, the output of thedegamma block is only 8 bits per color—the same as the input. Since theinput and output word sizes are the same, a spatial contouring filter istypically included to diffuse the quantization errors that occur,especially for low intensity pixels. The most significant 7 bits of eachcolor of the linearized RGB image data from the spatial contouringfilter are input into the boundary dispersion logic 604. As describedabove, the LSB of each color is not necessary in the embodimentdescribed above in relation to Table 1 and bypasses the boundarydispersion logic 604.

FIG. 7 is a block diagram of the boundary dispersion logic circuit 604for one of the color paths in the boundary dispersion logic circuit 604.Sequential color systems only require one color path. In FIG. 7, thesingle-color image data is received by a color lookup table 702 and usedto generate a 2 bit pattern select signal. The row and columninformation, ROWCNT and COLCNT are used, along with the 2 bit patternselect signal, to create a pattern toggle signal that selects whetherthe ‘A’ or ‘B’ pattern will be produced by the boundary dispersionlookup table 704. The color lookup table 702 is only necessary to enablethe use of 75/25 and 25/75 patterns. The ROWCNT and COLCNT signal aretoggled each frame period to implement the odd/even frame toggling thatswitches between the frame 1 and frame 2 patterns. The pattern togglesignal from the pattern toggle logic block 706 is used by the boundarydispersion lookup table 704 to select one of two sets of output data foreach possible input data word.

Returning to FIG. 6, the 21 most significant image data bits, which havenow expanded to 27 bits, are recombined with the 3 least significantimage data bits and input to an optional RGBW processing circuit 606. Asdescribed in U.S. Patent Application 60/174,106 and other pending andissued patents, sequential color systems sometimes separate the whitecomponent of a video signal from the RGB data and display the whitecomponent during a clear color wheel segment or during the spoke periodsin which the light filtered by the color wheel changes colors. Althoughshown after the boundary dispersion logic 604, the optional RGBWprocessing logic 606 can also be located in front of the boundarydispersion logic 604 in the signal path. The formatted image data, whichnow consists of ten bits for each of the three primary colors and eightbits for white, is driven to a data formatting logic circuit 608 whereit is reformatted for display on a micromirror device 610. Micromirrordevices typically receive data in bit planes, or portions thereof, inwhich a given bit weight for each pixel of a group of pixels istransferred to the micromirror. The reformatter receives data in abit-parallel pixel-serial format and outputs data to the micromirrordevice in a bit-serial pixel-parallel format. The reformatting logicalternately uses the two memory banks in ping-pong fashion—writing toone while data is read from the other.

Reset driver 612 provides various voltage waveforms necessary to set andreset the mirrors of the micromirror device 610. Control logic 614synchronizes the operation of the entire system.

FIG. 8 is a schematic view of an image projection system 800 using theboundary dispersion techniques described herein. In FIG. 8, light fromlight source 804 is focused on a micromirror 802 by lens 806. Althoughshown as a single lens, lens 806 is typically a group of lenses andmirrors which together focus and direct light from the light source 804onto the surface of the micromirror device 802. Controller 814 performsthe boundary dispersion processing and provides image data and controlsignals to the micromirror 802 to cause some mirrors to rotate to an onposition and others to rotate to an off position. Mirrors on themicromirror device that are rotated to an off position reflect light toa light trap 808 while mirrors rotated to an on position reflect lightto projection lens 810, which is shown as a single lens for simplicity.Projection lens 810 focuses the light modulated by the micromirrordevice 802 onto an image plane or screen 812.

Thus, although there has been disclosed to this point a particularembodiment and method for boundary dispersion that reduces PWMcontouring artifacts, it is not intended that such specific referencesbe considered as limitations upon the scope of this invention exceptinsofar as set forth in the following claims. Furthermore, havingdescribed the invention in connection with certain specific embodimentsthereof, it is to be understood that further modifications may nowsuggest themselves to those skilled in the art, it is intended to coverall such modifications as fall within the scope of the appended claims.

1-29. (canceled)
 30. A method of ameliorating image artifacts in a pulsewidth modulated display system, the method comprising the steps of:receiving a series of input pixel intensity values; converting each saidpixel intensity value to at least one bit pattern; and displaying eachsaid bit pattern using pulse width modulation to form a series of imagepixels, at least one of said input pixel intensity values displayedalternately by at least two said bit patterns, a first of said at leasttwo bit patterns having at least one active bit period with a durationdifferent than an active bit period duration of a second of said atleast two bit patterns.
 31. The method of claim 30, wherein whether agiven said input pixel intensity value is formed by the alternatedisplay of at least two said bit patterns is determined by the value ofsaid given input pixel intensity value.
 32. The method of claim 30,wherein whether a given said input pixel intensity value is formed bythe alternate display of at least two said bit patterns is determined bythe value of neighboring input pixel intensity values.
 33. The method ofclaim 30, wherein whether a given said input pixel intensity value isformed by the alternate display of at least two said bit patterns isdetermined by the value of said given input pixel intensity valuerelative to neighboring input pixel intensity values.
 34. The method ofclaim 30, wherein whether a given said input pixel intensity value isformed by the alternate display of at least two said bit patterns isdetermined by the value of said given input pixel intensity valuerelative to at least one major bit boundary.
 35. The method of claim 30,said step of displaying each said bit pattern to form a series of imagepixels, at least one of said input pixel intensity values displayedalternately by at least two said bit patterns comprising alternatelydisplaying said two bit patterns with a 50/50 duty cycle.
 36. The methodof claim 30, said step of displaying each said bit pattern to form aseries of image pixels, at least one of said input pixel intensityvalues displayed alternately by at least two said bit patternscomprising alternately displaying said two bit patterns with a 25/75duty cycle.
 37. The method of claim 30, said step of displaying eachsaid bit pattern to form a series of image pixels, at least one of saidinput pixel intensity values displayed alternately by at least two saidbit patterns comprising alternately displaying said two bit patternssuch that the duty cycle of a major bit increases as the input intensityword increases.
 38. The method of claim 30, said step of displaying eachsaid bit pattern to form a series of image pixels, at least one of saidinput pixel intensity values displayed alternately by at least two saidbit patterns comprising alternately displaying each said bit pattern fora frame period.
 39. The method of claim 30, said step of displaying eachsaid bit pattern to form a series of image pixels, at least one of saidinput pixel intensity values displayed alternately by at least two saidbit patterns comprising alternately displaying said two bit patternswith a 75/25 duty cycle.
 40. A method of ameliorating image artifacts ina display system, the method comprising the steps of: providing a set ofmultiple-bit bit patterns to represent each allowed image intensityword; receiving a series of input pixel intensity values; convertingeach said pixel intensity value to at least one of said multiple-bit bitpatterns; converting selected ones of said pixel intensity values to atleast two different of said multiple-bit bit patterns; wherein a firstbit pattern for a given pixel intensity value in said at least twodifferent of said multiple-bit bit patterns comprises a first pluralityof bits, wherein a value of each bit of said first plurality of bits isfor indicating a respective active bit period for displaying light for arespective bit period duration and said respective bit period durationdiffers in duration from any other bit period duration corresponding toany other bit of said first plurality of bits; wherein a second bitpattern for said given pixel intensity value in said at least twodifferent of said multiple-bit bit patterns comprises a second pluralityof bits, wherein a value of each bit of said second plurality of bits isfor indicating a respective active bit period for displaying light for arespective bit period duration and said respective bit period durationdiffers in duration from any other bit period duration corresponding toany other bit of said second plurality of bits; and wherein at least onerespective bit period duration corresponding to said first bit patterndiffers from all respective bit period durations corresponding to saidsecond bit pattern; and displaying light in response to selected ones ofsaid multiple-bit bit patterns, comprising: displaying light for saidrespective bit periods of said first bit pattern for said given pixelintensity value; and displaying light for said respective bit periods ofsaid second bit pattern for said given pixel intensity value.
 41. Themethod of claim 40, wherein whether a given said input pixel intensityvalue is formed by the alternate display of at least two said bitpatterns is determined by the value of said given input pixel intensityvalue.
 42. The method of claim 40, wherein whether a given said inputpixel intensity value is formed by the alternate display of at least twosaid bit patterns is determined by the value of neighboring input pixelintensity values
 43. The method of claim 40, wherein whether a givensaid input pixel intensity value is formed by the alternate display ofat least two said bit patterns is determined by the value of said giveninput pixel intensity value relative to neighboring input pixelintensity values.
 44. The method of claim 40, wherein whether a givensaid input pixel intensity value is formed by the alternate display ofat least two said bit patterns is determined by the value of said giveninput pixel intensity value relative to at least one major bit boundary.45. The method of claim 40, said step of displaying each said bitpattern to form a series of image pixels, at least one of said inputpixel intensity values displayed alternately by at least two said bitpatterns comprising alternately displaying said two bit patterns with a50/50 duty cycle.
 46. The method of claim 40, said step of displayingeach said bit pattern to form a series of image pixels, at least one ofsaid input pixel intensity values displayed alternately by at least twosaid bit patterns comprising alternately displaying said two bitpatterns with a 25/75 duty cycle.
 47. The method of claim 40, said stepof displaying each said bit pattern to form a series of image pixels, atleast one of said input pixel intensity values displayed alternately byat least two said bit patterns comprising alternately displaying saidtwo bit patterns such that the duty cycle of a major bit increases asthe input intensity word increases.
 48. The method of claim 40, saidstep of displaying each said bit pattern to form a series of imagepixels, at least one of said input pixel intensity values displayedalternately by at least two said bit patterns comprising alternatelydisplaying each said bit pattern for a frame period.
 49. The method ofclaim 40, said step of displaying each said bit pattern to form a seriesof image pixels, at least one of said input pixel intensity valuesdisplayed alternately by at least two said bit patterns comprisingalternately displaying each said bit pattern for a color frame period.50. The method of claim 40, said step of displaying each said bitpattern to form a series of image pixels, at least one of said inputpixel intensity values displayed alternately by at least two said bitpatterns comprising alternately displaying said two bit patterns with a75/25 duty cycle.
 51. The method of claim 40 wherein at least one bitperiod duration corresponding to a bit in said first plurality of bitsdiffers in duration by a factor other than a power of 2 from any otherbit period duration corresponding to any other bit of said firstplurality of bits.